java两个构造函数?
我已经用setter和getter完成了我的任务(我是用OOD完成的),但是我仍然不明白这两个Rectangle
方法的目的是什么,如果我删除了空的Rectangle
,就会出现一个错误:
注意,这不是完整的代码
// private double length = 25.0;
private double width = 15.5;
public Rectangle(){
}
public Rectangle(double length, double width){
this.length = length;
this.width = width;
}
public void setDimension(double length,double width){
this.length = length;
this.width=width;
}
public double getLength(){
return length;
}
public double getWidth(){
return width;
}
public double area(){
return length * width;
}
public double perimeter(){
return 2 * (length + width);
}
public static void print(){
Rectangle rt = new Rectangle();
Box box = new Box();
System.out.println("The rectangle has a length of " + rt.getLength() + " and a width of " + rt.getWidth() );
System.out.println("The rectangle has an area of "+ rt.area());
System.out.println("The rectangle has a perimeter of "+ rt.perimeter());
box.print();
}
# 1 楼答案
这是默认(无参数)构造函数。由于您有另一个构造函数,如果不显式定义,Java将不会隐式创建它。因为
print
方法中的第一行调用了它,所以如果删除它,就会出现错误